package com.hml.hello;

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World");
        System.out.println(getVerifyCode());
        play();
        change();
    }

    // 开发一个双色球游戏
    public static void play(){
        // 使用StringBuilder替代String进行循环拼接，提高性能
        StringBuilder code = new StringBuilder();
        for (int i = 0; i < 6; i++) {
            int number = (int)(Math.random() * 33 + 1);
            code.append(number);
            // 可以添加分隔符让结果更清晰，如：
            // if (i < 5) code.append(", ");
        }
        System.out.println(code.toString());
    }

    // 定义一个方法生成验证码并返回
    public static String getVerifyCode(){
        // 使用StringBuilder替代String进行循环拼接，提高性能
        StringBuilder code = new StringBuilder();
        for (int i = 0; i < 4; i++) {
            int number = (int)(Math.random() * 10);
            code.append(number);
        }
        return code.toString();
    }

    // 进制转换：2 8 10 16
    public static void change(){
        int a = 10;
        System.out.println(Integer.toBinaryString(a)); // 二进制
        System.out.println(Integer.toOctalString(a));  // 八进制
        System.out.println(Integer.toHexString(a));    // 十六进制

        int i1 = 0B01100001;  // 二进制, 0b开头
        System.out.println(i1);

        // 将八进制表示改为十进制，提高可读性
        // 0141(八进制) = 97(十进制)，添加注释说明原始八进制值
        int i2 = 97;  // 等价于八进制0141
        System.out.println(i2);

        int i3 = 0XFA;  // 十六进制, 0x开头
        System.out.println(i3);
    }
}
